Systems and methods for dynamically creating hyperlinks associated with relevant multimedia content

ABSTRACT

The present disclosure relates to systems and methods for dynamically creating hyperlinks associated with relevant multimedia content in a computer network. A hyperlink generation module receives an electronic text file from a server. The module searches the text file to identify keywords present in the file. Once the keywords have been identified, a database is queried to identify multimedia content that is related to the keywords. Generally, multimedia content is associated with metadata to enable efficient searching of the multimedia content. Typically, the multimedia content is contextually relevant to both the identified keywords and text file. One or more hyperlinks corresponding to the keywords are then generated and inserted into the text file. The hyperlinks provide pointers to the identified multimedia content. After insertion into the text file, the hyperlinks may be clicked by a user or viewer of the file to retrieve and display the identified multimedia content.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.12/405,298, filed on Mar. 17, 2009, and claims the benefit under 35U.S.C. § 119(e) of U.S. Provisional Patent Application No. 61/037,068,filed Mar. 17, 2008, entitled “Systems and Methods for DynamicallyCreating Hyperlinks Associated with Relevant Multimedia Content,” whichare hereby incorporated by reference herein in their entireties.

TECHNICAL FIELD

The present systems and methods relate generally to electronic textfiles, Internet websites, and multimedia content, and particularly tosystems and methods for automatically generating hyperlinks associatedwith multimedia content within electronic text files.

BACKGROUND

The Internet has made various forms of content available to users acrossthe world. For example, Internet users access websites to view articles,research particular topics of interest, watch videos, etc. Contentproviders and publishers (e.g. website providers) use the Internet todisplay articles or news stories, describe offered services, presentadvertising, and perform a host of other activities. Often websitesinclude one or more hyperlinks that, when clicked via a mouse or cursor,direct an Internet user to additional content or information. As usedherein, a “hyperlink” refers to a directly followable reference (i.e. arelation between objects in which one object designates by linking toanother object) for use within an electronic text file or hypertextdocument. As is customary and understood in the art, hyperlinks aretypically highlighted or presented in a color different from theirsurrounding text to indicate to an Internet user that the hyperlink maybe accessed for additional content.

Often, hyperlinks are used for linking to and/or displaying videos,images, other websites, articles, advertisements, etc. In somecircumstances, content providers use hyperlinks and their associatedcontent to retain Internet users at the providers sites for longerperiods of time. It is generally assumed that the longer a user remainsat a website, the more advertising he or she will be exposed to, or themore interested he or she may become in the website content (and thusbecome a repeat viewer, subscribe to a membership, etc.), and the morepopular and profitable the website will become. Accordingly, contentpublishers often create hyperlinks to videos, images, related articles,etc., in the hopes of keeping users at the publishers' sites for longerperiods of time. For example, many content publishers assume that if anInternet user is reading an article on a website, the user would mostlikely be interested in a video or additional article related to thecontent of the initial article. Thus, it is highly beneficial to thepublisher to present hyperlinks to videos or other content that arecontextually relevant to the initial website content in the hopes thatthe user will interact with the hyperlinked content, and will therebycontinue viewing the particular website (and its associated content andadvertisements) instead of navigating to another site.

Traditionally, website developers or programmers manually create eachhyperlink in an electronic text file by hard-coding the link into thetext file. With the advent of electronic news media and the virtuallyreal-time availability of Internet content, it is extremely difficultfor programmers to keep up. For example, assuming a particular Internetpublisher of new stories desires to link to relevant videos within eachof its published new stories, website developers must continue tomanually create hyperlinks to related videos each time an additionalstory is published on the associated website. In a situation in whichthe content provider publishes new content rapidly and continuously, itcan become virtually impossible for programmers to generate hyperlinksfor each new content item, much less create links to content that iscontextually relevant to the original content item. Also, this manualhyperlink creation can be cumbersome, tedious, inefficient, andtime-consuming, as well as a drain on monetary resources that could beused for other business needs within a network environment.

In addition to being time-consuming and inefficient, because hyperlinksare manually created to point to videos or other content chosen by aprogrammer or website operator, the selected videos are often notrelevant or germane to the article of interest. For example, as timepasses, videos may become stale or forgotten, and thus highly relevantvideos are not associated with a particular article, either because theyare old and a programmer has forgotten them, or because the programmeris simply unaware of their existence. Considering the vast amount ofcontent available today over the web, it is infeasible for a programmerto be able to make intelligent decisions regarding linking of content toeach new published content item, especially considering the timeconstraints placed on the programmer. Thus, an Internet user clicking ahyperlink may be limited to viewing content, such as a video or list ofvideos, that is only marginally related, or not related at all, to theoriginal website content.

Additionally, many hyperlinks are programmed to return a further list ofhyperlinks, wherein the hyperlinks in the list are each associated withadditional content, videos, websites, etc. Typically, such a list isunranked and unorganized, and is often presented with no discernablestructure or organization. For example, the list may simply comprise acatalog of a given website's most current videos, regardless of content.Or, a list may include any and all videos stored on a website'sdatabase, with no selection or organization. In these circumstances, auser must tediously search through the plurality of videos or othercontent to find the content that is most relevant to the article orelectronic text file the user is viewing on the web page. This tedioussearching is not only annoying, but time-consuming and there is noassurance that the user will discover videos that are relevant to theoriginal article, or with which the user would have an interest.

For these and many other reasons, there is a continuing need for asystem or method that dynamically generates or creates hyperlinks withinan electronic text file, and associates those hyperlinks with contentthat is contextually relevant to the electronic text file. There is afurther need for a system or method that ranks lists of hyperlinksassociated with an electronic text file according to the relevance ofthe linked content to the text file.

SUMMARY OF THE DISCLOSURE

Briefly described, and according to one embodiment, the presentdisclosure is directed to a system for creating hyperlinks withinelectronic text files that link to multimedia content, wherein themultimedia content is contextually related to the electronic text files.The system comprises a server for hosting and displaying electronic textfiles to users, a database for storing the electronic text files andmultimedia content, and a hyperlink generation module that performs thesteps of generating and inserting hyperlinks into an electronic textfile. Specifically, the described embodiment of the hyperlink generationmodule receives an electronic text file from the server, scans theelectronic text file to identify one or more keywords in the electronictext file, queries the database as a function of the one or moreidentified keywords to identify multimedia content related to theidentified keywords based on metadata associated with the multimediacontent, generates a hyperlink for each of the one or more identifiedkeywords, wherein each generated hyperlink includes a pointer to theidentified multimedia content related to the respective keyword, andinserts the one or more generated hyperlinks into the electronic textfile for subsequent use.

According to one aspect, the step performed by the hyperlink generationmodule of querying the database further comprises the steps ofretrieving the multimedia content, extracting the metadata associatedwith the multimedia content, and comparing the extracted metadata to theone or more identified keywords to identify specific multimedia contentrelated to the one or more identified keywords.

According to another aspect, the one or more keywords are selected froma predefined list, dynamically generated, or identified via somecombination of both.

According to a further aspect, the electronic text files comprise filetypes selected from the group comprising: HyperText Markup Language(HTML) files, Extensible HyperText Markup Language (XHTML) files, andExtensible Markup Language (XML) files.

According to an additional aspect, the multimedia content comprises oneor more video files or audio files.

According to yet another aspect, the pointer to the identifiedmultimedia content includes a storage address in the database for theidentified multimedia content.

According to another embodiment, the present disclosure is directed to amethod, in a computer network, for dynamically creating one or morehyperlinks within an electronic text file. The method comprises thesteps of receiving an electronic text file, searching the electronictext file to identify one or more keywords in the electronic text file,querying a multimedia content database index based on the one or moreidentified keywords to identify multimedia content related to theidentified keywords as a function of metadata associated with themultimedia content, generating a hyperlink for each of the one or moreidentified keywords, wherein each generated hyperlink includes a pointerto the identified multimedia content related to the respective keywordfor subsequent retrieval of the multimedia content, and inserting theone or more generated hyperlinks into the electronic text file fordisplay to a viewer of the electronic text file. When activated or“clicked” by a viewer, the one or more inserted hyperlinks are used toretrieve and display the identified multimedia content to the viewer ofthe electronic text file within the computer network.

According to one aspect, the step of querying the multimedia contentdatabase index further comprises the steps of retrieving the multimediacontent, extracting the metadata associated with the multimedia content,and comparing the extracted metadata to the one or more identifiedkeywords to identify specific multimedia content related to the one ormore identified keywords.

According to another aspect, the identified multimedia content iscontextually related to the electronic text file.

According to a further aspect, the one or more keywords are selectedfrom a predefined list, dynamically generated, or identified via somecombination of both.

According to an additional aspect, the electronic text file comprises afile type selected from the group comprising: a HyperText MarkupLanguage (HTML) file, an Extensible HyperText Markup Language (XHTML)file, and an Extensible Markup Language (XML) file.

According to yet another aspect, the multimedia content comprises one ormore video files or audio files.

According to still another aspect, the pointer to the identifiedmultimedia content includes a storage address within the computernetwork for the identified multimedia content.

According to a further embodiment, the present disclosure is directed toa method, in a computer network, for automatically creating one or morehyperlinks within an electronic text file for subsequent display to oneor more viewers, wherein each of the one or more hyperlinks is linked toone or more videos that are contextually relevant to content of theelectronic text file. The method comprises the steps of receiving theelectronic text file from a web server, scanning the electronic textfile to identify one or more keywords in the electronic text file,retrieving a plurality of videos from a video database index, whereineach video in the plurality of videos is associated with one or moremetadata identifiers, and extracting the one or more metadataidentifiers from each video in the plurality of videos. Once extracted,the metadata identifiers are compared with the one or more identifiedkeywords to identify one or more matches between the identifiers andkeywords. For each identified keyword, the method further comprises thesteps of retrieving a storage address in a video database for each videoassociated with the one or more extracted metadata identifiers matchedto the respective keyword, associating the storage address for eachvideo with the keyword to generate a hyperlink code for the keyword, andinserting the generated hyperlink code into the electronic text file.After all hyperlink codes have been inserted, the electronic text fileis displayed to one or more viewers, and the inserted hyperlink codesare utilized to retrieve and display the one or more matched videos tothe one or more viewers of the text file.

According to one aspect, the one or more keywords are selected from apredefined list, dynamically generated, or identified via somecombination of both methods.

According to another aspect, the electronic text file comprises a filetype selected from the group comprising: a HyperText Markup Language(HTML) file, an Extensible HyperText Markup Language (XHTML) file, andan Extensible Markup Language (XML) file.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate one or more embodiments of thedisclosure and, together with the written description, serve to explainthe principles of the disclosure. Wherever possible, the same referencenumbers are used throughout the drawings to refer to the same or likeelements of an embodiment, and wherein:

FIG. 1 is a diagrammatic representation of an embodiment of a dynamichyperlink generation system that automatically generates and insertshyperlinks into electronic text files to associate multimedia contentwith the text files.

FIG. 2 shows a flow chart demonstrating the steps performed by anembodiment of the hyperlink generation module to dynamically createhyperlinks associated with relevant videos.

FIG. 3 is a flowchart illustrating the steps associated with oneembodiment of the hyperlink creation process.

FIG. 4 shows an exemplary terminal display illustrating an exemplaryelectronic text file displayed via an Internet website according to oneembodiment of the present system.

FIG. 5 shows an exemplary terminal display of an exemplary electronictext file with hyperlinks displayed via an Internet website according toone embodiment of the present system.

FIG. 6 illustrates an exemplary terminal display of an electronic textfile displaying a pop-up video in response to user interaction with ahyperlink in the text file according to one embodiment of the presentsystem.

FIG. 7 illustrates a terminal display of an exemplary hyperlink listingaccording to one embodiment of the present system.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

For the purpose of promoting an understanding of the principles of thepresent disclosure, reference will now be made to the embodimentsillustrated in the drawings and specific language will be used todescribe the same. It will, nevertheless, be understood that nolimitation of the scope of the disclosure is thereby intended; anyalterations and further modifications of the described or illustratedembodiments and any further applications of the principles of thedisclose as illustrated therein are contemplated as would normally occurto one skilled in the art to which the disclosure relates.

Aspects of the present disclosure generally relate to systems andmethods for automatically generating and inserting hyperlinks associatedwith multimedia content into electronic text files based on the contentof the text files. Generally, an electronic text file is analyzed toidentify keywords within the file. The identified keywords are used tosearch for and retrieve multimedia content related to the keywords.Typically, the multimedia content is associated with metadata thatenables the searching and retrieval of specific types of content. Onceretrieved, the multimedia content is associated with one or morekeywords to generate a hyperlink between the content and keywords. Afterit is generated, the hyperlink is inserted into the electronic text fileat the appropriate keyword location to create a link to the retrievedmultimedia content. Preferably, the generated hyperlinks create links tomultimedia content that is contextually relevant to the content of theelectronic text files. This process of dynamically generating andinserting hyperlinks into text files enables efficient creation ofhyperlinks for vast amounts of content on a recurring basis and/or onthe fly as new multimedia content and/or electronic text files becomeavailable.

Referring now to the drawings, FIG. 1 is a diagrammatic representationof an embodiment of a dynamic hyperlink generation system 10 thatautomatically generates and inserts hyperlinks into electronic textfiles to associate multimedia content with the text files. For exemplarypurposes and for ease of reference, the embodiment shown in FIG. 1 (andreferenced in other parts of this disclosure) represents a system 10 forlinking video files with electronic text files. As will be understoodand appreciated by one of ordinary skill in the art, however, othertypes of multimedia content (e.g. audio files, websites, digital images,etc.) are also linked to electronic text files according to variousother embodiments of the present system, and the present system is in noway limited to creation of hyperlinks that link to videos. In theembodiment shown, the system 10 includes a web server 20, a hyperlinkgeneration module 40, a video database 60, a content database 70, and avideo database index 80. The system 10 also includes a connection to oneor more viewers or users 95 via a network 90 (e.g. the Internet). Aswill be understood, although the embodiment of the system 10 shown inFIG. 1 includes only one of each of a web server, video database,content database, video database index, and hyperlink generation module,other embodiments of the present system include a plurality of each ofthese components. As will also be understood, according to oneembodiment, the content database 70, video database 60, and videodatabase index 80 are merged into a single database.

According to one embodiment, the web server 20 hosts data content, suchas web pages including electronic text files 30. Although the servershown in FIG. 1 represents a web server for hosting Internet activity,embodiments of the present system are not limited to such servers, andother servers (e.g. general-purpose servers within a networkedenvironment) are used according to various embodiments of the presentsystem. Examples of electronic text files 30 include, but are notlimited to, electronic documents, news and other content-relatedarticles, blog postings, message board postings, threaded discussions,emails, or any other text-based, computer-readable file. Generally, eachelectronic text file 30 within the system 10 comprises a HyperTextMarkup Language (HTML) file, an Extensible Hypertext Markup Language(XHTML) file, an Extensible Markup Language (XML) file, or some othersimilar type as will occur to one of ordinary skill in the art. In apreferred embodiment, the electronic text files comprise HTML files thatare hosted and displayed on a website to Internet users 95 via the webserver 20 and network 90.

In the embodiment shown in FIG. 1, electronic text ides 30 are stored inthe content database 70 for subsequent use. To initiate the dynamichyperlink creation and insertion process as described herein, a givenelectronic text file 30 is retrieved from the content database 70 by theweb server 20 and provided to the hyperlink generation module 40. Atthis stage, the text file generally does not include any hyperlinks,although some text files may include manually-coded hyperlinks, orhyperlinks generated during previous iterations via the hyperlinkgeneration module process 200 (described below). The hyperlinkgeneration module 40 analyzes the electronic text file to identifykeywords contained within the file. The keywords are identified andlocated within the electronic text file via one or more predeterminedalgorithms, as described in greater detail below. According to oneembodiment, the hyperlink generation module 40 comprises a third partycomponent external to the web server system and operated independentlyand separately from the web server network. According to anotherembodiment, the hyperlink generation module comprises a componentinternal to the web server's network.

Once identified, the keywords are used to query the video database index80 to identify and locate videos that are relevant or germane to thekeywords (and, typically, to the overall content of the electronic textfile 30). According to one embodiment of the present system 10, thevideo database index 80 stores indexed video files that have beenpre-associated with metadata related to content in the videos, such asthe subjects of the videos, people or actors in the videos, videotitles, video creation or publish dates, places described in the videos,or any other desired video content (described in greater detail below).Thus, the hyperlink generation module 40 queries the video databaseindex 80 as a function of the identified keywords to locate videos withmetadata identifiers that match or are somehow related to the keywords.

Once the relevant videos have been identified based on the keywords andrelated metadata, the hyperlink generation module 40 dynamicallygenerates a hyperlink for one or more of the identified keywords in theelectronic text file 30, thus providing a link for each keyword to theidentified video or videos (described in greater detail below).According to one embodiment, the video database index 80 includesindexed versions of video files (associated with metadata identifiers)that mirror the videos stored in video database 60. Generally, the videodatabase 60 stores the multimedia content associated with a given webserver 20. According to one embodiment as videos are added or removedfrom video database 60, corresponding updates are made to the videodatabase index 80 via communication link 15. The hyperlink generationmodule 40 is able to access addresses and locations of videos stored invideo database 60 via communication link 15, and thus create pointers tothose videos for the generated hyperlink. One generated, the hyperlinksare inserted into the electronic text file 30 by the hyperlinkgeneration module to transform the text file into an electronic textfile with hyperlinks 50.

Still referring to FIG. 1, after the hyperlinks have been inserted, thetext file with hyperlinks 50 is returned to the web server 20 where itis made available to users 95, or stored in the content database 78 forsubsequent use, or otherwise processed. As mentioned, in one embodiment,the hyperlinks associated with the keywords include pointers that pointto videos in the particular web server's 20 video database 60 based onthe addresses (i.e. storage locations or identifiers) of those videos inthe database. According to one embodiment, when an electronic text filewith hyperlinks 50 is made available for viewing by users 95, theidentified videos are retrieved from the video database 60 and stored inmemory. Thus, if a user clicks on a hyperlink in the text file 50, thesystem is able to quickly display the associated video (or list ofvideos) to the user. In another embodiment, rather than storing thevideos in memory, an access call is made to the video database 60 toretrieve the associated video(s) each time a user 95 interacts with ahyperlink. Regardless of how identified videos are stored within eachembodiment, the present system 10 enables dynamic creation of hyperlinkswithin electronic text files and display of relevant multimedia contentto users based on the content in the text files.

Referring now to FIG. 2, a flow chart is shown demonstrating the stepsperformed by a hyperlink generation module 40 to dynamically createhyperlinks associated with relevant videos according to one embodimentof the present system. Again, as mentioned previously, while exemplaryembodiments of the present system are described in relation tohyperlinks associated with video content, hyperlinks are created withother content types according to various other embodiments. Initially,as described above, an electronic text file 30 is received by thehyperlink generation module 40 from a web server 20 (step 205). As willbe understood and appreciated, the hyperlink generation process 200performed on a looping and continual basis as new electronic text filesand/or video content is received by the system 10. Thus, one embodimentof the system repeats process 200 fix a new electronic text file eachtime such a file is created within or received by the system. Accordingto another embodiment, process 200 is repeated for each electronic textfile in the system as new video content is received by or created withinthe system to ensure that the most relevant and up-to-date video contentis linked to the text files. Accordingly, in some embodiments, process200 is performed not only on electronic text files 30, but also onelectronic text files with hyperlinks 50 to ensure that hyperlinkedvideo content is relevant and current. As will be understood andappreciated, the hyperlink generation module process 200 may beperformed in a variety of ways as desired by a system operator and aswill occur to one of ordinary skill in the art.

At step 210 in FIG. 2, the hyperlink generation module 40 identifies oneor more keywords within the electronic text file 30. The keywords mayrelate to virtually any content within the electronic text file, such asnames, places, dates, things, action words, acronyms, etc. As will beunderstood by one having ordinary skill in the art, the keywords may bedetermined in any number of ways. According to one embodiment of thepresent system, keywords are predefined by a system operator, and thehyperlink generation module scans the electronic text file via asearching algorithm to determine if any of the keywords in thepredefined list of keywords are included in the text file. For example,some system operators may desire only to link particular types of videocontent to electronic text files, regardless of the subject matter ofthe text files. Thus, the system operator may define a set of keywordsthat link to that particular type of video content.

A particularly relevant application of use of predefined keywords is inthe marketing or advertising context. For example, an automobilemanufacturer may want to display videos (e.g. commercials) related toits products to users 95 based on relevant keywords such as “car”,“automobile”, “hybrid”, “gasoline”, etc. Thus, the automobilemanufacturer is able to contract with a content provider to generatehyperlinks related to the manufacturer's products each time a predefinedkeyword appears in the content provider's hosted content (i.e.electronic text files). As will be understood, predefined keywords maybe used for other applications not herein described, as will occur toone having ordinary skill in the art.

In another embodiment, keywords are defined and identified through theuse of Natural Language Processing (NLP) of the text. In general, NLPsystems convert samples of human language into more formalrepresentations that are easier for computer programs to manipulate.According to one embodiment, the NLP system comprises a form of“computational linguistics,” which includes the statistical and/orrule-based modeling of natural language from a computationalperspective. For example, one embodiment of the present system uses atf-idf (term frequency-inverse document frequency) weighting to evaluatehow important or relevant a term or word is to an electronic text fileor collection of text files. The number of times a term occurs in anelectronic text file or document is called its “term frequency”.However, because many words are common (e.g. “the”, “for”, etc.), simplyusing words with the highest term frequency as the keywords willincorrectly emphasize common words. Hence, an “inverse documentfrequency” factor is incorporated that diminishes the weight of termsthat occur very frequently in the text file or collection of files andincreases the weight terms that occur less frequently. Accordingly, oneembodiment of the present system utilizes a searching algorithm (e.g.contextualizer screen) to analyze all words in an electronic text file30 and determine the tf-idf weighting for each word. Words that havetf-idf weightings above a predetermined threshold are defined as thekeywords for the particular text file. Further examples and explanationsof tf-idf processes are described in Salton, G. and Buckley, C.,Term-Weighting Approaches in Automatic Text Retrieval, InformationProcessing and Management 24 (5), pp. 513-23 (1988), which isincorporated herein by reference as if set forth herein in its entirety.As will be understood and appreciated, various forms of NLP and tf-idfweighting are used according to various embodiments of the presentsystem 10.

According to a preferred embodiment, NLP is used in combination withlists of predefined terms to determine keywords based on relevant orrecent topics, news stories, etc. The keywords are determined by akeyword generation algorithm that spiders the Internet and collects asampling of news articles and other related content, and then extractspopular names and of topics from the collected set. The extracted namesand topics are used to define a predetermined list of keywords forkeyword identification in electronic text files 30 and subsequenthyperlink generation. According to one embodiment, popular names areextracted based on heuristics (e.g. Mr. President, Mrs. President, etc.)(for further explanation of heuristics, see Pearl, Judea, Heuristics,Addison-Wesley Publishers (1984), which is incorporated herein byreference as if set forth herein in its entirety), predefined lists offirst and/or last names (e.g. famous names associated with celebrities,political leaders, etc.), and the term frequency of recognized names.Thus, based on these heuristics, predefined lists, and term frequencies,the keyword generation algorithm is able to determine names that arementioned frequently or are in the news over a predefined time period(e.g. the past few days), and define those names as keywords.

In the preferred embodiment, popular topics are extracted based onN-grams and the term frequency of extracted/recognized N-grams. As willbe understood by one of ordinary skill in the art, an N-gram comprises asub-sequence of N items from a given sequence. Generally, N-gram modelsare a type of probabilistic model used for predicting the next item asequence. For example, the items in the sequence may be phonemes,syllables, letters, words, base pairs, etc. Preferably, bigrams(sequences of two words) and trigrams (sequences of three words) areused for scanning a content collection. Thus, based on the frequency ofphrases in the collection, the keyword generation algorithm identifiespopular phrases (i.e. topics) and defines those phrases as keywords(specifically, sequences of terms comprising a keyword set). As will beunderstood and appreciated, various sizes of N-grams are used accordingto various embodiments, and the present system is not limitedspecifically to the use of bigrams and trigrams.

Still referring to FIG. 2, regardless of the method used to definekeywords, a searching algorithm is used to scan the electronic text file39 to identify any keywords that match the defined keywords. After thekeywords have been identified, the hyperlink generation module 49queries the video database index 80 to identify one or more videosassociated with those keywords (step 215). According to one embodiment,if many keywords are identified within a given electronic text file,then the system only retrieves videos and creates hyperlinks for asubset of the identified terms (e.g. the ten terms with the highesttf-idf weights) as defined by a system operator. As describedpreviously, in one embodiment, the stored videos are tagged and indexedvia metadata identifiers according to content within the videos toenable efficient and scalable searching of all indexed videos based uponthe metadata identifiers. The metadata identifiers or attributes areassociated with a variety of content elements within the videos, such aspeople or actors in the videos, objects in the videos, places shown ordescribed in the videos, video scenes, subject matter, etc. Variousmethods are known for analyzing and associating metadata with videos toenable indexing and searching of the videos, such as those described inU.S. Patent Publication No. 2002/0108112 to Wallace et al and U.S.Patent Publication No. 2004/0237101 to Davis et al., both of which areincorporated herein by reference as if set forth herein in theirentireties. Alternatively, some videos are tagged with metadata whenthey are created (e.g. commercials). Thus, in one embodiment, all videosare associated with metadata based on each video's content before thevideos can be searched and subsequently linked to electronic text files.

As mentioned, the hyperlink generation module 40 queries the videodatabase index 80 using the identified keywords to identify video fileswith metadata corresponding to the keywords. Generally, videos aresearched for and retrieved separately for each identified keyword (orset of keywords, such as with an N-gram, a first and last namecombination, etc.), such that each keyword or keyword set is linked toits respective identified video content. According to one embodiment ofthe present system, the hyperlink generation module searches for andretrieves videos as a function of predefined system settings as definedby a system operator. For example, one aspect of the system simplyretrieves all videos that have one or more of the identified keywords inthe title of each video. Alternatively, another aspect only retrievesvideos with actor- or person-related meta data that matches keywordnames identified in text files. Still a further aspect retrieves videosassociated with metadata identifiers that match all the keywords in agiven electronic text file, or some predetermined percentage of theidentified keywords. As will be understood by one of skill in the art,the method in which a video or videos are retrieved for inclusion in ahyperlink may be varied as desired by a system operator. Preferably,because keywords are generally related to the overall content of anelectronic text file 30, it is assumed that retrieved videos are also sorelated, and a user 95 viewing the text file will have an interest inthe related video content.

Still referring to FIG. 2, once the video files have been identified orselected by the hyperlink generation module 40, a hyperlink isautomatically created for each keyword corresponding to the retrievedvideo or videos for that keyword, as described in greater detail belowin conjunction with the hyperlink code creation process 300 shown inFIG. 3. To avoid redundancy, some embodiments of the present system 10only create a hyperlink for the first instance (or some limited numberof instances) of each keyword in an electronic text file (e.g. if 100instances of the name “Obama” are identified in a text file, the systemonly creates a hyperlink for the first instance or first few instances).Once generated, each hyperlink (i.e. the program code associated witheach hyperlink) inserted into the electronic text file at itsappropriate keyword location (step 220). Generally, hyperlinks arewritten in the same programming language as is the electronic text file.For example, in a preferred embodiment, because electronic text filescomprise HTML format, hyperlinks are also written in such format. Afterall hyperlinks have been inserted, the electronic text file 30 isthereby transformed into an electronic text file with hyperlinks 50, andis returned to the web server 20 for display to users 95 or for othersubsequent use (step 225).

FIG. 3 is a flowchart illustrating the steps associated with oneembodiment of the hyperlink code creation process 300. The stepsillustrated in process 300 are performed for each keyword and video(s)combination identified via process 200. As will be understood, accordingto one embodiment, the steps shown in FIG. 3 are carried outautomatically by a computer algorithm such that no manual or humancoding is required. Initially, the keywords and videos that wereidentified during the hyperlink generation module process 200 areretrieved for use in hyperlink creation (steps 305, 310). At step 315,the system identifies the addresses or locations of the identifiedvideos within the video database 60. As mentioned previously, in oneembodiment of the present system, the video database index 80 storesindexed and metadata-associated file instances of the videos containedin the video database 60, and the content of both databases is updatedcorrespondingly via communication link 15 as videos are added to orremoved from either database. Accordingly, as videos are identified inthe video database index 80, the storage addresses or filenames of thecorresponding videos in the video database 60 can be obtained by thehyperlink generation module 40 via link 15. These storage addresses,filenames, or other location identifiers axe used to point to theassociated video content for each respective hyperlink.

After the location identifiers or addresses have been obtained for eachvideo associated with a given keyword, the keyword (or keyword set) isassociated with the identified video address(es) according to apredefined hyperlink program code to create the hyperlink code for therespective keyword (step 320). An exemplary HTML hyperlink code isrepresented as follows:<a href=“video address”>keyword</a>wherein “video address” represents the identified storage location ofthe video, and keyword represents the respective identified keyword.Once generated, hyperlink code is inserted into the electronic text file30 at the appropriate keyword location (discussed above in reference tostep 220 in FIG. 2). As will be understood and appreciated by one ofordinary skill in the art, while an HTML hyperlink code format is shown,the hyperlinks may be configured according to various known methods solong as the hyperlink retrieves and displays the identified andappropriate video content when clicked by a user 95.

Referring now to FIG. 4, an exemplary terminal display 400 is shownillustrating an exemplary electronic text file 30 displayed via anInternet website. As shown, the exemplary electronic text file comprisesat news article discussing a presidential address regarding an economicstimulus package. As mentioned previously, electronic text files 30 maycomprise articles, blog postings, threaded discussions, emails, andother similar text-based files. As shown, the electronic text file 30represented in FIG. 4 includes no hyperlinks, thus indicating it has notyet been processed according to an embodiment of the present system.

FIG. 5 shows a terminal display 500 of an exemplary electronic text filewith hyperlinks 50 displayed via an Internet website. The text file withhyperlinks shown in FIG. 5 corresponds to the same text file representedin FIG. 4, but at a time subsequent to the file being processed toinclude dynamically-created hyperlinks associated with identifiedkeywords. As shown, hyperlinks 505, 510, 515, 520 were created andinserted in the text file for the terms “Obama” (and “Barack Obama”),“stimulus package”, “recession”, and “Hillary Clinton”, respectively.These representative hyperlinks were generated and inserted into thetext file based on the file's content according to the methods asdescribed previously in connection with FIGS. 2 and 3. As one ofordinary skill in the art will understand, the hyperlinked terms shownin FIG. 5 are presented for illustrative purposes only, and many otherterms within the electronic text file could have been selected askeywords and thereby hyperlinked depending upon the predefinedattributes of the algorithms or computer programs used to generate thehyperlinks according to a particular embodiment of the present system.Additionally, although the hyperlinked terms are shown in bold andunderlined, it will be understood that hyperlinks are represented in avariety of known manners according to various embodiments of the presentsystem.

According to one embodiment and as described previously, when a user 95clicks on one of the generated hyperlinks, a video 605, videos, or listof further video hyperlinks 705 is returned that is or are relevant tothe particular keyword selected and, preferably, the overall content ofthe electronic text file. If a single video is hyperlinked to thekeyword, then, depending on the embodiment, when the hyperlink isclicked by a user 95, that video is displayed via a popup window 605 onthe website (shown in FIG. 6), or the user is directed to a separatewebpage where the video is displayed, or the video is presentedaccording to some other known technique.

As shown in FIG. 6, a video of President Obama addressing Congressregarding an economic stimulus package is displayed to a user via apop-up window 605. The display of this video is in response to the userclicking on one of the hyperlinks in the electronic text file withhyperlinks 50 shown in FIG. 5. As described previously, preferably, thevideo content is highly-relevant to the text file content. Thus, asshown in FIG. 6, the content of the video (i.e. the President addressingCongress regarding a stimulus package) is contextually related to thecontent of the text file (i.e. a discussion of the President's addressto Congress regarding the stimulus package). As mentioned previously,while videos are preferably contextually related to text file content,embodiments of the present system 10 are able to link multimedia contentto keywords based on a variety of desired criteria.

According to another embodiment, rather than displaying a single video,the system displays a list of hyperlinks 705 (i.e. list of links tofurther videos) in response to user interaction with a keywordhyperlink. FIG. 7 illustrates a terminal display 700 of an exemplaryhyperlink listing according to one embodiment of the present system. Aswill be understood and appreciated, a plurality of videos may apply orbe relevant to a single keyword (or keyword phrase/set), and thus a listof those videos is presented to a user in response to the hyperlinkedkeyword being clicked. Generally, the list 705 includes icons or furtherclickable links to the videos themselves. Depending on the embodiment,if icons are presented, the icons comprise clickable thumbnailrepresentations of the videos, or short titles of the videos, etc. Inone embodiment, each hyperlinked phrase or icon in the list comprisesthe title of its respective video. As will be understood, the list ofhyperlinks 705 may be presented via a pop-up window, or on a separatewebpage, etc.

Preferably, if a list of hyperlinks 705 is displayed to a user 95, thehyperlinks are ranked based on their relevance to the content of theelectronic text file 50. The exemplary list of hyperlinks shown in FIG.7 corresponds to the “Obama” or (“Barack Obama”) keywords to theelectronic text file with hyperlinks 50. Accordingly, as demonstrated bythe hyperlink tides associated with the videos, the videos generallyinclude some reference to Barack Obama. However, videos that are relatednot only to the keyword (i.e. “Obama”), but also to the general contextof the text file (i.e. recession, stimulus package, politics,influential leaders, etc.) are displayed as well. Videos that includehigh relevance to both the keyword and the overall context of the textfile are preferably displayed first, so that a user 95 is more likely toview the videos. Videos are deemed highly-relevant to the text filecontent based on a variety of methods, including ranking videos firstthat have high percentages of metadata that match extracted keywordsfrom the text file, or simply ranking the most recent (i.e. newest)videos first, etc. As will be understood, videos may be ranked in avariety of manners based on the parameters of a given embodiment of thesystem.

The foregoing description of the exemplary embodiments has beenpresented only for the purposes of illustration and description and isnot intended to be exhaustive or to limit the inventions to the preciseforms disclosed. Many modifications and variations are possible in lightof the above teaching.

The embodiments were chosen and described in order to explain theprinciples of the inventions and their practical application so as toenable others skilled in the art to utilize the inventions and variousembodiments and with various modifications as are suited to theparticular use contemplated. Alternative embodiments will becomeapparent to those skilled in the art to which the present inventionspertain without departing from their spirit and scope. Accordingly, thescope of the present inventions is defined by the appended claims ratherthan the foregoing description and the exemplary embodiments describedtherein.

What is claimed is:
 1. A method for populating an electronic text filewith hyperlinks, the method comprising: receiving, by a server via anetwork, an electronic text file from an external content databaseserver, wherein the server is a separate device from the externalcontent database server; identifying, by the server, one or morekeywords contextually relevant to the electronic text file, and for eachrespective keyword of the one or more identified keywords: retrieving,by the server, a storage address in a video database for a multimediavideo content item associated with a metadata identifier matched to therespective keyword; associating, by the server, the storage address forthe multimedia video content item with the respective keyword togenerate at least one hyperlink for the respective keyword; andinserting, by the server, a keyword hyperlink into the electronic textfile, the keyword hyperlink linking the respective keyword to a displaybased on the generated hyperlink; in response to a request for theelectronic text file from a client device, the server sending theelectronic text file with the inserted keyword hyperlink to the clientdevice and, prior to receiving a request for the multimedia videocontent item from the client device, copying the multimedia videocontent item from the video database into a memory; responding to therequest from the client device for the multimedia video content item byaccessing the multimedia video content item from the memory; andreturning, by the server, the electronic text file with the insertedkeyword hyperlink via a network back to the same external contentdatabase server from whom the electronic file was received, wherein theserver, the external content database server, and the client areseparate and distinct devices.
 2. The method of claim 1, wherein theretrieving, by the server, the storage address further comprises:retrieving a database entry associated with the multimedia video contentitem; extracting the metadata identifier associated with the multimediavideo content item from the database entry; and retrieving the storageaddress in response to determining that the metadata identifier matchesthe respective keyword.
 3. The method of claim 2, wherein the retrievingthe database entry comprises: querying the video database to identify atleast one database entry related to the respective keyword.
 4. Themethod of claim 1, wherein the metadata identifier is extracted from anentry in the video database associated with the multimedia video contentitem.
 5. The method of claim 1, wherein the electronic text fileincludes one or more of electronic documents, news and othercontent-related articles, blog postings, message board postings,threaded discussions, email messages, text-based computer-readablefiles, HyperText Markup Language (HTML) files, Extensible HyperTextMarkup Language (XHTML) files, Extensible Markup Language (XML) files,or webpages.
 6. The method of claim 1, wherein the keyword hyperlinkincludes a pointer to the storage address in the video database for themultimedia video content item.
 7. The method of claim 1, wherein themultimedia video content item is one of a plurality of multimedia videocontent items, and the display comprises a listing of the plurality ofmultimedia video content items.
 8. The method of claim 1, wherein thememory is stored within a server located remotely from the videodatabase.
 9. A system for populating an electronic text file withhyperlinks, the system comprising: a memory; and control circuitryconfigured to: receive, by a server via a network, an electronic textfile from an external content database server, wherein the server is aseparate device from the external content database server; identify, bythe server, one or more keywords contextually relevant to the electronictext file, and for each respective keyword of the one or more identifiedkeywords: retrieve, by the server, a storage address in a video databasefor a multimedia video content item associated with a metadataidentifier matched to the respective keyword; associate, by the server,the storage address for the multimedia video content item with therespective keyword to generate at least one hyperlink for the respectivekeyword; and insert, by the server, a keyword hyperlink into theelectronic text file, the keyword hyperlink linking the respectivekeyword to a display based on the generated hyperlink; in response to arequest for the electronic text file from a client device, the server tosend the electronic text file with the inserted keyword hyperlink to theclient device and, prior to receiving a request for the multimedia videocontent item from the client device, copy the multimedia video contentitem from the video database into the memory; respond to the requestfrom the client device for the multimedia video content item byaccessing the multimedia video content item from the memory; and return,by the server, the electronic text file with the inserted keywordhyperlink via a network back to the same external content databaseserver from whom the electronic file was received, wherein the server,the external content database server, and the client are separate anddistinct devices.
 10. The system of claim 9, wherein the controlcircuitry is configured to retrieve the storage address by beingconfigured to: retrieve a database entry associated with the multimediavideo content item; extract the metadata identifier associated with themultimedia video content item from the database entry; and retrieve thestorage address in response to determining that the metadata identifiermatches the respective keyword.
 11. The system of claim 10, wherein thecontrol circuitry is configured to retrieve the database entry by beingconfigured to: query the video database to identify at least onedatabase entry related to the respective keyword.
 12. The system ofclaim 9, wherein the metadata identifier is extracted from an entry inthe video database associated with the multimedia video content item.13. The system of claim 9, wherein the electronic text file includes oneor more of electronic documents, news and other content-relatedarticles, blog postings, message board postings, threaded discussions,email messages, text-based computer-readable files, HyperText MarkupLanguage (HTML) files, Extensible HyperText Markup Language (XHTML)files, Extensible Markup Language (XML) files, or webpages.
 14. Thesystem of claim 9, wherein the keyword hyperlink includes a pointer tothe storage address in the video database for the multimedia videocontent item.
 15. The system of claim 9, wherein the multimedia videocontent item is one of a plurality of multimedia video content items,and the display comprises a listing of the plurality of multimedia videocontent items.
 16. The system of claim 9, wherein the memory is storedwithin a server located remotely from the video database.